Pikifen/Creating status effects
This page will guide you on the creation of status effects for Pikifen. Introduction Status effects temporarily change an object's properties. While under a status effect, an object can be slower, stronger, colored differently, etc. Objects can be under multiple status effects at once. Examples of status effects are: on fire, spicy, petrified, drowning, etc. Status effects are defined on Game_data/Misc/Statuses.txt. In this text file, each block defines a status effect, with the block's name being the status effect's name. Properties Each status effect has the following properties: * color: Color that represents the status effect, in the format r g b or r g b a. * tint: When an object is under this status effect, they are tinted by this color, in the format r g b or r g b a. Default is 255 255 255 (white, which means no tint). * glow: When an object is under this status effect, they are lit up by this color, in the format r g b or r g b a. Default is 0 0 0 0 (no color). * removable_with_whistle: If true, the status effect can be removed if the object is whistled by a leader. * auto_remove_time: The status effect is automatically removed after these many seconds have passed. 0 means it does not auto-remove with time. * health_change_ratio: Every second that passes, its health increases by this much. This represents the ratio of max health, meaning that if a object has 1000 max health, and this value is -0.5, it will lose 500 points of health after one second. * causes_disable: If true, Pikmin affected by this will enter a "disabled" state. During this state, they can't do much, and can't interact with much. Useful for stunning them. * causes_flailing: If true, Pikmin affected by this will enter a "flailing" state, where change to a flailing animation and are only able to move. They come towards the leader when whistled. Useful for drowning Pikmin. * causes_panic: If true, Pikmin affected by this will enter a "panic" state, where they won't interact with many things, but will run around randomly in a panic. * disabled_state_inedible: If true, Pikmin in the "disabled" state caused by this status effect will not be able to be eaten. If false, they can be eaten even in this state. * disables_attack: If true, attack hitboxes are ignored. Useful for petrifying mobs and making them harmless, for instance. * speed_multiplier: Multiply the object's movement speed by this much. * attack_multiplier: Multiply the object's attack power by this much. * defense_multiplier: Multiply the object's defense by this much. * anim_speed_multiplier: Multiply the speed of animations by this much. 0 means animations don't move. Useful for petrified enemies. * animation: Name of the animation to draw on top of the object affected by this status effect, if any. This animation must be defined in Game_data/Animations, and the property must include the extension (e.g. Fire.txt). * animation_mob_scale: If 1, the animation is scaled to be the same size as the object. 0.5 will make it half the size of the object, 2.0 will make it twice as big, etc. Only the width of the animation is taken into account to calculate the final size, but the animation's proportions are kept. * affects_pikmin: If true, this status effect affects Pikmin. * affects_leaders: If true, this status effect affects leaders. * affects_enemies: If true, this status effect affects enemies. * particle_generator: If you want objects under this status effect to generate particles, specify the particle generator here. Read the particle generator guide to learn how to create some. * particle_offset: If particles are meant to spawn, you can offset them from the object's center here. The format is x y z, and these are relative coordinates. * maturity_change_amount: If a Pikmin is affected by this status effect, its maturity will instantly increase by the specified amount. You can also write negative numbers to decrease the maturity. You don't need to worry about the maturity number going over, so a change amount of "+2" on a bud Pikmin won't make it turn into a Pikmin on stage 4. * turns_invisible: If true, objects under this status effect will be considered invisible for other objects. They will still show up on the screen (unless you tinted them with transparency), but other objects will not be able to receive "in reach" events. Category:Pikifen